מינימיזציה של DFA L. הוא אוטמומט מינימלי עבור L של שפה רגולרית A ראינו בסוף הסעיף הקודם שהאוטומט הקנוני קיים A DFA בכך הוכחנו שלכל שפה רגולרית קיים אוטומט מינמלי המזהה אותה. זה אומר שלכל נקרא A A לאוטומט מינימלי שקול ל- DFA המעבר מ- A. שקול ל- אוטומט מינימלי, שהוא DFA A. בסעיף זה נציג אלגוריתם למינימיזציה של אוטומט, ללא שימוש בבניה של האוטומט מינימיזציה של הקנוני שאותה ראינו בסעיף הקודם. בנוסף, נוכיח את יחידות האוטומט המינימלי בכך שנראה שכל אוטומט על ידי שינוי שמות A שמתקבל מ- A הוא בעצם העתק מדוייק של L מינימלי שמזהה את השפה המצבים בלבד. שקילות מצבים באוטומט.A מצבים ב- q, p Q, DFA ויהיו F A = Q, Σ, δ, q, יהי,δ(p, z) F δ(q, z) F שמקיימת z Σ היא מילה p q מילה מפרידה בין המצבים או להיפך. ניתנים להפרדה. p q p, אומרים שהמצבים q אם קיימת מילה מפרידה בין לא אינם ניתנים להפרדה, כלומר אם p q,qep אם, ורשמים p q שקול ל- אומרים ש-. p q קיימת מילה מפרידה בין. δ(p, z) F δ(q, z) F מתקיים: z Σ לכל מילה qep לפי ההגדרות, A. של Q הוא יחס שקילות על קבוצת המצבים E קל לבדוק ש- יחס השקילות E על Q משמר את קבוצת המצבים הסופיים F. הכוונה היא שעבור שני מצבים p. F זה אומר שמצב מקבל ומצב לא מקבל לא יכולים q, F אז qep,q: p Q אם להופיע ביחד באותה מחלקת שקילות, כי המילה הריקה מפרידה בין כל מצב מקבל וכל מצב לא מקבל. אם יש במחלקת שקילות מצב מקבל, אז כל המצבים באותה מחלקה הם מצבים מקבלים. אותו דבר נכון למצבים לא מקבלים. ומתקיים:,E היא קבוצת כל מחלקות השקילות השונות של היחס Q E = { [q] q Q }.Q ב-, qep Q E ב-,[q] = [p] q A, אז מבחינת האוטומט לא משנה אם הוא נמצא במצב הם שני מצבים שקולים ב- DFA p q אם q, לא יכולה להיות שונה או במצב p. תוצאת הריצה (קבלה/דחיה) שלו על מילה כלשהי שמתחילה מ- q p. נראה שבמקרה זה, נוכל לצמצם את שני המצבים מתוצאת הריצה על אותה מילה שמתחילה מ- p למצב אחד, מבלי לשנות את שפת האוטומט. להלן נתאר דרך לצמצום DFA על ידי זיהוי מצבים שקולים E למצב אחד באוטומט המצומצם, כל זאת כמובן, בלי באוטמט, וצמצום כל מחלקת שקילות של היחס לשנות את שפת האוטומט. 0 q 0 0 q 3 2 q 4. δ(q, z) F δ(q, z) F 0 q q דוגמה : A משמאל, נקרא לו DFA ב- 0 היא מילה מפרידה. ניתנים להפרדה, q q 0 היא מילה מפרידה. ניתנים להפרדה, q q 0 היא מילה מפרידה. ניתנים להפרדה, q q ε היא מילה מפרידה. ניתנים להפרדה, q q שקולים. q q כלומר אינם ניתנים להפרדה, q q זה נכון כי עבור מילה {0,} z מתקיים:. δ(q, z) F z 0(0 + ) δ(q, z) F הם מצבים שקולים, כי לכל {0,} z מתקיים כמו כן,.[q ] = {q, q } [q ] = {q, q }, [q ] = {q } מחלקות השקילות השונות של היחס E. Q E = {[q ], [q ], [q ] } הן:
[q ] 0, [q ] 0 A, שהרי 0, אם נאחד את כל המצבים בכל מחלקת שקילות [q]), למצב אחד (שנסמנו ב- A באוטומט [q] ] q]. A כל האוטומט משמאל, שנקרא לו נקבל את מצבים שונים באוטומט זה ניתנים להפרדה, שני שקול ל- A כלומר, אין באוטומט זה מצבים שקולים שונים. כמו כן. L(A ) = L(A) = (0 + ) 0(0 + ). A נקרא צמצום של האוטומט A ל- A המעבר הזה מ- DFA צמצום של אוטומט הגדרה: A DFA שכל שני מצבים שונים בו ניתנים להפרדה נקרא אוטומט מצומצם. זהו שני מצבים שונים שקולים, כלומר, כל מצב בו שקול אך ורק לעצמו. שאין בו למשל, האוטומט בדוגמה הקודמת הוא אוטומט מצומצם, וקל לבדוק זאת (כלומר, למצוא מילה מפרידה בין כל שני מצבים שונים ב- A). A.A A קיים אוטומט מצומצם, A משפט: לכל DFA שקול ל- להוכחת משפט זה נציג בניה שבהינתן DFA כלשהו F, A = Q, Σ, δ, q, בונה אוטומט מצומצם.DFA בניה זו נקראת צמצום של.A שקול ל- A = Q, Σ, δ, q, F.Q.A E A הבניה:, A = Q, Σ, δ, q, F כאשר: המצבים ב- הם מחלקות השקילות של היחס על. Q E = { [q] q Q } ]. q = q] המצב ההתחלתי ב- A הוא מחלקת השקילות של המצב בבתחלתי ב- המצבים הסופיים ב- A הם מחלקות השקילות של.δ ( [q], ) = [δ(q, )]. F = Q = Q E = { [q] q F } המצבים הסופיים ב- A. פונקצית המעברים δ : Q Σ Q מוגדרת על ידי הוכחת נכונות הבניה: כדי להוכיח את נכונות הבניה הזו, נוכיח מספר טענות: A הוא DFA מוגדר היטב. בבניה זו היא הגדרה טובה שאינה תלויה בנציגים של מחלקות הוכחה: צריך להראות שהגדרת האוטומט F מוגדרת היטב (ii) δ מוגדרת היטב (i) השקילות המופיעים בה. ספיציפית עלינו להראות:.[δ(q, )] = [δ(p, )] נוכיח כי. [q] = [p] וכי q, p Q מוגדרת היטב, נניח כי δ די להוכיח ש- (i) ( δ(p, הם מצבים לא שקולים, כלומר אז ( δ(q, [(.[δ(q, [( [δ(p, לשם כך נניח בשליליה ש- δ( δ(q, ), z ) F ).δ(p, זה אומר ש- שמפרידה בין ) δ(q, קיימת מילה Σ z, δ(p, z) F או להפך. δ(q, z) F,δ( δ(p, ), z ) F או להפך. את זה נוכל לרשום בצורה אינם שקולים, כלומר p q, p ולכן q היא מילה מפרידה בין v = z זה אומר שהמילה שהמילה [p],[q] בסתירה להנחה. F. משמר את Q מוגדרת היטב נובעת ישר מהעובדה שיחס השקילות על F העובדה ש- (ii) A.q Q ההרחבה של פונקציית המעברים δ מקיימת w)],δ ([q], w) = [δ(q, לכל Σ w הוכחה: באינדוקציה על אורך.w עבור δ ([q], ε) = [q] = [δ(q, ε)] :w = ε ת. הי Σ w ויהי. Σ נניח כי w)],δ ([q], w) = [δ(q, ונוכיח כי w)]. δ ([q], w) = [δ(q, ואכן: δ ([q], w) = δ (δ ([q], w), ) = δ ([δ(q, w)], ) = [δ(δ(q, w), )] = [δ(q, w)] הרחבת הנחת אינד הגד הרחבת 2
A הוא אוטומט מצומצם. הוכחה: כדי להוכיח ש- A הוא אוטומט מצומצם, יהיו [q] [p] מצבים שונים ב- A, נראה כי [q] [p] ניתנים להפרדה. לשם כך עלינו להראות שקיימת מילה Σ z כך ש- δ ( [q], z ) F,(A ניתנים להפרדה (ב- p q הרי המצבים [q] [p] או להפך. ואכן, היות, δ ( [p], z ) F כלומר, קיימת מילה מילה Σ z כך ש- δ(q, z) F, δ(p, z) F או להפך. מכאן, לפי הגדרת F נקבל ש- [δ(q, z)] F [δ(p, z)] F, או להפך. לפי תכונת ההרחבה של δ שהוכחנו בטענה הקודמת, זה אומר ש- δ ( [q], z) F, δ ( [p], z ) F או להפך. סיימנו. : w Σ ואכן, לכל מילה.L(A ) = L(A) A. שקול ל- הוכחה: צריך להראות ש- A [δ(q, w)] F הרחבת δ ([q ], w) F הגדרת δ (q, w) F הגדרת ) ( w L(A ) הגדרת () הגדרת L(A). w על כן L(A),L(A ) = כנדרש. δ(q, w) F זה מסיים את הוכחת נכונות הבניה (צמצום אוטומט), ומסיים את הוכחת המשפט. כדי לצמצם A =,Q,Σ δ, q, F DFA צריך דבר ראשון לחשב את מחלקות השקילות של היחס E על Q F = או F = (אם.Q F F נציג אלגוריתם שיאפר לנו לעשות זאת. נניח כי.Q אז לא יהיו באוטומט זוגות מצבים שניתנים להפרדה, כלומר כל מצבי האוטומט יהיו שקולים זה לזה). נשים לב שהנחה זו מחייבת שמספר המצבים באוטומט יהיה לפחות 2. נפתח אלגוריתם דינמי שמחשב בשלבים את כל זוגות המצבים הניתנים להפרדה באוטומט A. באיתחול (שלב 0), האלגוריתם יסמן את את זוגות המצבים שניתנים להפרדה על ידי ε, בשלב הוא יסמן את זוגות המצבים הניתנים להפרדה על ידי מילה מאורך אחד, בשלב 2 הוא יסמן את זוגות המצבים הניתנים להפרדה על ידי מילה מאורך 2, וכן האלה. האלגוריתם יתבסס על הלמה הבאה. למה: יהי F,DFA A = Q, Σ, δ, q, יהיו q, p Q מצבים שונים, ותהי Σ.z א. ב. אם z = ε אז: z מפרידה בין q q F p, p F או להפך. אם z ε אז z = v כאשר Σ Σ, v ומקרה זה.δ(p, ) δ(q, ) מפרידה בין v p q מפרידה בין z, δ(p, ε) F או δ(q, ε) F p q ε מפרידה בין p q מפרידה בין הוכחה: א. z, p F או להפך. F q להפך,δ(p, v) F או להפך δ(q, v) F p q v מפרידה בין p q מפרידה בין z ב..δ(p, ) δ(q, ) מפרידה בין v או להפך, δ(δ(p, ), v) F δ(δ(q, ), v) F ננסח כעת אלגוריתם שיאפשר לנו לחשב את מחלקות השקילות השונות של היחס E עבור DFA נתון A. אלגוריתם (זיהוי מצבים שקולים).A = Q, Σ, δ, q, F קלט: DFA. q, p Q הם מצבים שקולים שונים EQ = {q, p} פלט:.{q, p} X לכל Δ({q, p}) = φ,x = {q, p} הם מצבים שונים q, p Q צעדים:..Δ({q, p}) = x p F או להפך, סמן q F :{q, p} X אם לכל.2 בצע:,{q, p} X לכל.3 הבא. כלומר, דלג על זוגות שכבר סומנו Δ({q, ({p = x,עבור לזוג {p,q} אם i. 3
Δ({q, p}) = x ואם כן סמן, Δ({δ(q, ), δ(p, )}) = x בדוק אם : Σ לכל.ii ועבור לזוג המצבים {p,q} הבא. אם בביצוע צעד 3 סומנו זוגות {p,q} חדשים, חזור ל- 3. החזר: } φ.eq = { {q, p} X Δ({q, p}) =.4.5 בביצוע צעד 2, האלגוריתם מסמן את קבוצת כל הזוגות (הלא סדורים) {p,q} באוטומט שניתנים להפרדה על ידי ε. בביצוע צעד 3 פעם ראשונה, האלגוריתם מסמן את כל הזוגות הניתנים להפרדה על ידי מילה מאורך. עם סיום ביצוע צעד 3 פעם ראשונה, כל הזוגות {p,q} שניתנים להפרדה על ידי מילה מאורך k פעמים, אז, לפי הלמה, בתום הביצוע כל כבר סומנו (לפי הלמה). אם האלגוריתם מבצע את צעד 3 הזוגות {p,q} שניתנים להפרדה על ידי מילה מאורך k כבר סומנו. כדי לסיים את הוכחת הנכונות של האלגוריתם, נוכיח עוד למה. נסמן למה: יהי F,DFA A = Q, Σ, δ, q, ונניח כי מספר המצבים ב- A הוא Q.n = אז עבור :q, p Q אם q p ניתנים להפרדה, אז הם ניתנים להפרדה על ידי מילה z מאורך 2 n. הוכחה: נשתמש בסימוני האלגוריתם. נסמן: q, p ניתנים להפרדה,S = {q, p} X ולכל 0 i, S = S q, p ניתנים להפרדה ע"י מילה z מאורך i. S = {q, p} X אז יש לנו. S = {q, p} X או להפך, p F ו q F S S S כעת נסתכל בסדרת ההכלות. S S S חלק מההכלות פה הן הכלות ממש וחלק הן שוויונים. i ולכן קיים 0,( S S X n 2 לא יתכן שכל ההכלות בסדרה זו הן הכלות ממש (כי לכל i: כך ש-.S = S כעת נוכיח: טענה: בסדרת ההכלות, S S S אם S = S אז.S = S (כלומר, אחרי השוויון הראשון שיופיע בסדרת ההכלות, כל ההכלות תהיינה שוויונים).,S = S ונראה כי.S = S לשם כך עלינו רק להראות כי.S S הוכחת הטענה: נניח ש- מאורך z {q, p} S קיימת מילה היות ואכן, יהי {q, p} S, נראה כי {q, p} S.. {q, p} S ולכן i + היא מאורך z אז בוודאי,z = ε אם. p q המפרידה בין i + 2 +,i ולפי הלמה הקודמת Σ v היא מילה מאורך Σ כאשר z = v אז z ε אם S = S ולפי ההנחה ש-, {δ(q, ), δ(p, ) } S מבכאן ש-.δ(p, ) δ(q, ) מפרידה בין v המפרידה בין ) δ(q, i מאורך u.{δ(q, ), δ(p, ) } S זה אומר שקיימת מילה נסיק כי. {q, p} S ולכן,p q והיא מפרידה בין i + היא מאורך w u מכאן שהמילה.δ(p, ) היא סדרה סופית, כלומר, קיים S S S זה מסיים את הוכחת הטענה. מטענה זו ומההערה לפניה נקבל שסדרת ההכלות. S = S = S = S בנוסף,. S = S :i k ולכל, S S S כך ש- k 0 שני מצבים שונים באוטומט הם ניתנים להפרדה אם ורק אם הם ניתנים משמעות השוויון האחרון היא: n. 2 k k. כדי לסיים את הוכחת הלמה, נשאר להראות כי להפרדה על ידי מילה מאורך עבור,,q p Q, Q באופן הבא: על 0 i, יחס שקילות כדי לעשות זאת, נגדיר, לכל ( i p q E או {q, p} S (כלומר, אינם ניתנים להפרדה על ידי מילה מאורך. δ(p, z) F δ(q, z) F מתקיים:,i מאורך z Σ q = p qe p qe p במלים אחרות: לכל קל לבדוק שאלה אכן יחסי שקילות על,Q וכי מתקיים: E = E. E E E לפי מה שהוכחנו לעיל, סדרת ההכלות E E E היא מהצורה, E E E = E. S S S שהופיע לעיל עם סדרת ההכלות k. rnk(e ) < rnk(e ) < < rnk( E ) = 2 ). rnk(e לכן, מסדרת E = E לכל.i k המספר k כאן הוא ה- מההכלות E E E כעת, ליחס נסיק כי Q. F לכן F שהן יש שתי מחלקות שקילות שונות 4 E
) + k rnk( E 2. אבל כמובן,,k n כלומר 2,2 + k n אי השוויונים ) rnk(e ) < rnk(e ) < < rnk( E נסיק כי rnk( E ) n (כי, E הוא יחס על,Q Q = n.( אז יש לנו כנדרש. לפי למה זו, האלגוריתם לזיהוי מצבים שקולים עוצר על כל קלט, וזאת אחר ביצוע הלולאה של צעדים 3 4 2 n פעמים לכל היותר, ובנוסף הוא מסמן את כל זוגות המצבים הניתניים להפרדה באוטומט A. היות וזמן הבצוע של צעד 3 (וגם של צעד 2) הוא פולינומי, אז לפי הלמה, כך גם זמן הריצה של האלגוריתם. ננסח כעת אלגוריתם לצמצום של.DFA הוא יתבסס על האלגוריתם לזיהוי מצבים שקולים, ועל הבניה שראינו בהוכחת המשפט לעיל, על צמצום של אוטומט. אלגוריתם (צמצום אוטומט).A = Q, Σ, δ, q, F קלט: DFA A. A שקול ל- מצומצם DFA פלט: צעדים: A את האלגוריתם לזהוי מצבים שקולים. הרץ על. A. על סמך תוצאת צעד, מצא את כל מחלקות השקילות השונות של מצבים ב- 2. הצג את מחלקות השקילות שנמצאו בצעד 2 כצמתים של גרף של.DFA 3. כמצב סופי. [q] סמן את ] q] כמצב התחלתי, ולכל q F סמן את 4. [( [δ(q,. לצומת [q] ולכל אות קלט, העבר קשת מסומנת מצומת [q] לכל צומת 5. q q 2 q 3 q 4 q 5 q 6 q q 2 q 3 q 4 q 5 את צעד באלגוריתם (כלומר, הרצת האלגוריתם לזיהוי מצבים שקולים) נממש באמצעות טבלה משולשית המכילה תא אחד לכל שני מצבים שונים. הטבלה תהיה מהצורה המוצגת משמאל (למקרה שמספר המצבים באוטומט הוא 7). בהתחלה, כל התאים בטבלה יהיו ריקים. בביצוע צעד באלגוריתם (לזיהוי מצבים שקולים) נרשום X בתא של כל שני מצבים שאחד מהם נמצא ב- F והשני לא. לביצוע צעד 3 נעבור על כל התאים הריקים בטבלה, ולגבי כל תא נבצע את הבדיקה של צעד 3 ונפעל בהתאם. בסוף ההרצה נכריז על כל שני מצבים שהתא שלהם נשאר ריק בסוף ההרצה, כמצבים שקולים. דוגמה A בציור, נקבל: נפעיל את אלגוריתם הצמצום של אוטומט על ה- DFA q, q 2 q q 2 q 3 q 5 q 4 q 3 q 4 q 5 q 6 q 6 q q 2 q 3 q 4 q 5 5
ביצוע צעד, הוא הכנת הטבלה, עם תאים ריקים. בביצוע צעד 2, סומנו עשרה זוגות מצבים, בסימן. בביצוע צעד 3 פעם ראשונה, סומנו עוד שישה זוגות מצבים, בסימן. בביצוע צעד 3 פעם שניה, לא סומנו זוגות חדשים. ההרצה הסתיימה. תוצאת הרצת האלגריתם על האוטומט : A.EQ = { {q, q }, {q, q }, {q, q }, {q, q }, {q, q } } מכאן, שמחלקות השקילות השונות של מצבים ב- A הן:.[q ] = {q, q }, [q ] = {q, q, q }, [q ] = {q, q } A הצמצום של A הוא האוטומט המוצג בגרף: [q ], [q ] [q ]. שפת האוטומט היא שפת כל המילים ב- {,} שמתחילות ומסתיימות ב- שקול לו ומכיל פחות מצבים ממנו. DFA שאין A מינימיזציה של אוטומט אוטומט מינימלי הוא DFA A. האוטומט A שקול ל- A, ולהגיע לאוטומט מצומצם, A נוכל תמיד לצמצם את בהינתן DFA A יש מצבים שאינם ניתנים להשגה, והם נשארים אינו בהכרח אוטומט מינימלי, כי ייתכן שב- המצומצם A,DFA באוטומט לאחר הצימצום. ראינו קודם שתמיד ניתן להסיר את המצבים שאינם ניתנים להשגה ב- DFA שקול, שכל מצביו ניתנים להשגה. נציג אלגורים פשוט שעושה זאת: ולהישאר עם q, יחד עם אלגוריתם (הסרת מצבים שאינם ניתנים להשגה) קלט:. A = Q, Σ, δ, q, F DFA פלט: DFA שקול ל- A, שכל מצביו ניתנים להשגה. צעדים:. חשב את ) R q) לפי האלגוריתם לחישוב קבוצה זו..2 לכל מצב,q Q בדוק אם ), q R (q ואם לא, הסר מהגרף של את הצומת כל הקשתות הנוגעות בו. אם A הוא DFA מצומצם שכל מצביו ניתנים להשגה, אז A הוא בהכרח אוטומט מינימלי. את זה נוכיח במשפט הבא, עלי ידי כך שנראה ש- DFA מצומצם שכל מצביו ניתנים להשגה הוא בעצם האוטומט הקנוני של השפה שלו, אם נתעלם משמות המצבים באוטומט. כלומר DFA כזה יכול להיות שונה מהאוטומט הקנוני של השפה שלו רק בשמות המצבים. בכל פרט אחר, שני האוטומטים זהים. המשפט יוכיח גם את הטענה שלנו וגם את יחידות האוטומט המינימלי של שפה רגולרית. A A מעבר מ- DFA לאוטומט מינימלי שקול ל- נקרא מינימיזציה של A. 6
ז( אלגוריתם (מינימזציה של אוטומט) קלט:. A = Q, Σ, δ, q, F DFA פלט: DFA מינימלי שקול ל- A. צעדים:. הסר את המצבים שאינם ניתנים להשגה ב-, A לפי האלגוריתם הקודם. 2. הפעל את האלגוריתם לצמצום אוטומט על התוצאה של צעד. q F g(q) F יחידות האוטומט המינימלי מעל אותו א"ב. -DFA ים A = Q, Σ, δ, q, F A = Q, Σ, δ, q, F הגדרה: יהיו המקיימת את הדישות הבאות: g: Q Q A זהו פונקציה ל- A. איזומורפיזם מ- חד חד ערכית ועל. g..g (δ (q, )) = δ (g(q), ) : Σ ולכל q Q שומרת על מעברים, כלומר לכל g.2.g(q ) = q שומרת על המצב ההתחלתי, כלומר g.3 q: Q שומרת על מצבים סופים, כלומר עבור g 4..A אם קיים איזומורפיזם g מ- A ל- A A, A ורושמים איזומורפי ל- A. 2 אומרים ש- קל לראות כי היחס הוא יחס שקילות (על קבוצת כל ה- -DFA ים מעל א"ב נתון). שני אוטומטים A A הם איזומורפיים אם (ורק אם) הם זהים בכל הפרטים, פרט אולי לשמות המצבים. DFA משפט: (יחידות האוטומט המינימלי) יהי F A = Q, Σ, δ, q, מצומצם שכל מצביו ניתנים להשגה,.A A.L = L(A).δ(q, xz) F δ(q, yz) F Σ : z לכל.δ(q, z) = δ(p, z) לכל Σ :z.δ(δ(q, x), z) = (δ(q, y), z) לכל Σ :z הם מצבים שקולים באוטומט A (אין מילה מפרידה ביניהם), היות A הוא אוטומט p q מכאן ש-, כנדרש. q = p מצומצם (אין בו מצבים שונים ושקולים) נסיק כי מתקיים g L(q).x לפי הגדרת אז q Q [x] Q. ניקח.q = δ(q, x) (ii) תהי 7 ותהי אזי: הוכחה: לפי ההגדרה A = Q, Σ, δ, q, F כאשר:, (Σ על R קבוצת מחלקות השקילות של היחס (זוהי Q = Σ R = { [x] x Σ }.F = { [x] x L } q, δ ([x], ) = [x] נתונה על יד: δ : Q Σ Q = [ε] ראינו קודם שזה DFA מוגדר היטב וש-.L(A) = L כדי להוכיח את המשפט, נגדיר פונקציה :g Q Q על ידי: [x] g(q) = כאשר x היא מילה (כלשהי).(δ(q Σ בשפת המצב L(q).א x היא מילה ב- שמקיימת, (x = q נשים לב כי היות וכל מצבי האוטמט A ניתנים להשגה,הרי לכל מצב q Q קיימת מילה L(q) x, אבל צריך עדיין להראות ש- g(q) מוגדר היטב ואינו תלוי בבחירת המילה L(q). x לשם כך, נניח כי L(q) x, y ונראה כי [y],[x] = כלומר נראה כי.xR y ואכן:.δ(δ(q :z Σ, x), z) = (δ(q, y), z) לכל.δ(q, x) = δ(q, y) x, y L(q).δ(q z Σ.δ(q : z Σ לכל yz), xz) = δ(q, לכל : F, xz) F δ(q, yz) Σ,xR.xz L yz L : z כנדרש. y לכל.A,g: Q Q ונשאר להראות כי g היא איזומורפיזם מ- A ל- אז יש לנו פונקציה מוגדרת היטב לשם כך עלינו להראות כי: (i) g חח"ע, (ii) g על, (iii) g שומרת על מעברים, (vi) g שומרת על g המצב ההתחלתי (v) שומרת על מצבים מקבלים. ואכן: (i) יהיו q, p Q ונניח כי g(p).g(q) = נראה כי.q = p לשם כך נבחר שתי מלים L(q) x, q = δ(q, (x ניתנים להשגה). אז A יש מילים כאלה כי כל המצבים של (כאמור, y L(p) y), p = δ(q, ולפי הגדרת g מתקיים [x] g(q) = [y].g(p) = כעת:..xz L yz L לכל Σ : z. xr L y.[ x] [ y] g(q) = g(p)
[x].g(q) = על כן g היא על.,x L(q) ואכן, נבחר מילה.g (δ(q, )) = δ (g(q), ) מתקיים: Σ ולכל q Q צ"ל כי לכל (iii) ונסמן ).p = δ(q, אז L(p) x (כי:.(δ(q, x) = δ(δ(q, x), ) = δ(q, ) = p לכן לפי הגדרת g והגדרת נקבבל: ),g δ(q, ) = g(p) = [x] = δ ([x], ) = δ (g(q), כנדרש. g(q ) = [ε]. = q מתקיים g ולכן לפי הגדרת,ε L(q ) הרי δ(q, ε) = q היות (iv) זה אומר ש- g שומרת על המצב ההתחלתי. q = δ(q.q F g(q) F ואכן, נבחר מילה L(q).x אז x), :q Q צ"ל שלכל (v) δ(q [x] F g(q) F, x) F x L [x].g(q) = כעת: הגדרת F q. זה מסיים את הוכחת המשפט. δ 8